home *** CD-ROM | disk | FTP | other *** search
/ Softwarová Záchrana 3 / Softwarova-zachrana-3.bin / Xteq X-Setup / xqdcXSP-Setup-EN.exe / {app} / plugins / XQ AutoRun Srv.xpl < prev    next >
Text File  |  2004-02-07  |  4KB  |  153 lines

  1. "FILE"="Xteq Systems X-Setup Plugin 6.0"
  2. "TYPE"="8"
  3. "COUNT"="3"
  4. "UIPATH 1"="Startup/Shutdown\Startup\Windows 9x/ME\50) AutoRun - Part 1"
  5. "UIPATH 2"="Startup/Shutdown\Startup\Windows NT/2K/XP\20) AutoRun - Part 1"
  6. "NAME"="AutoRun Services (All Users)"
  7. "VERSION"="2.03"
  8. "LANGUAGE"="VBScript"
  9. "TEXT 1"="Show Info"
  10. "TEXT 2"="Enable/Disable"
  11. "TEXT 3"="Delete"
  12. "DESCRIPTION 1"="These services (system programs) are automatically started when this computer is started."
  13. "DESCRIPTION 2"="Click "Show Info" to see the command that is executed, "Enable/Disable" to enable or disable an item or "Delete" to remove an item."
  14. "AUTHOR"="Xteq Systems"
  15. "CONTACTURL"="http://www.xteq.com"
  16. "COPYRIGHT"="Copyright ⌐ Xteq Systems - All Rights Reserved"
  17. "COMMENT 1"=" "
  18.  
  19.  
  20. '/*** MAIN TEMPLATE IS XQ AutoRun Lister.XPL ***/
  21. '/*** ONLY CHANGE REGISTRY KEYS BELOW ***/
  22.  
  23.   sP="HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices\"
  24. sPD1="HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices-\"
  25. sPD2="HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices (Disabled)\"
  26.  
  27. '/////////////////////////////////
  28. '///*** NO CHANGES BELOW HERE ***/
  29. Dim aryLoc()
  30. Dim iReadAllCount
  31.  
  32. sDisabled=" [DISABLED]"
  33.  
  34. Sub Plugin_Initialize 
  35.   iReadAllCount=0
  36.   Call ReloadAll
  37. End Sub
  38.  
  39. Sub ReloadAll
  40.  for i=1 to iReadAllCount
  41.      Call SetUIElement(i,"")
  42.  next 
  43.  
  44.  i=0
  45.  
  46.  iC=RegEnumValues(sP)
  47.  i=i+iC
  48.  
  49.  iC=RegEnumValues(sPD1)
  50.  i=i+iC
  51.  
  52.  iC=RegEnumValues(sPD2)
  53.  i=i+iC
  54.  
  55.  
  56.  ReDim aryLoc(i)
  57.  iReadAllCount=1
  58.  
  59.  Call ReadAll(sP,1,false)
  60.  Call ReadAll(sPD1,2,true)
  61.  Call ReadAll(sPD2,3,true)
  62. End Sub
  63.  
  64. Sub ReadAll(key,idx,IsDisabledKey)
  65.  iC=RegEnumValues(key)
  66.  if iC>0 then
  67.     for l=1 to iC
  68.         sName=RegEnumElement(l)
  69.         
  70.         If IsDisabledKey=true then
  71.            sName=sName & sDisabled
  72.         end if
  73.  
  74.         Call SetUIElement(iReadAllCount,sName)
  75.         aryLoc(iReadAllCount)=idx
  76.  
  77.         iReadAllCount=iReadAllCount+1
  78.     Next
  79.  end if
  80.  
  81. End Sub
  82.  
  83.  
  84.  
  85. Sub Plugin_CheckData(ElementIndex)
  86. End Sub
  87.  
  88. Sub Plugin_Apply(ElementIndex,ElementSubIndex)
  89.  if ElementSubIndex>0 then
  90.  
  91.     'Look up Registry key
  92.     if aryLoc(ElementSubIndex)=1 then
  93.        sRegPath=sP
  94.     elseif aryLoc(ElementSubIndex)=2 then
  95.        sRegPath=sPD1
  96.     else
  97.        sRegPath=sPD2
  98.     end if
  99.      
  100.     'Look up Registry name
  101.     sRegName=GetUIElement(ElementSubIndex)
  102.     bIsEnabled=true
  103.     If InStr(sRegName,sDisabled)>0 then
  104.        sRegName=Left(sRegName,len(sRegName)-len(sDisabled))
  105.        bIsEnabled=false
  106.     end if
  107.  
  108.     'Look up Value
  109.     sValue=RegReadValue(sRegPath & sRegName)
  110.  
  111.     'msginformation sRegPath
  112.     'msginformation sRegName & "]"
  113.     'msginformation sValue 
  114.  
  115.  
  116.     if ElementIndex=1 then '//Information
  117.        Call MsgInformation("Command: " & vbCrlF & vbCrlf & sValue)
  118.     end if
  119.  
  120.     If ElementIndex=2 then '//Enable/Disable
  121.        if bIsEnabled=true then
  122.           '//Disable it 
  123.           Call RegWriteValue(sPD1 & sRegName,sValue,1)
  124.           Call RegDeleteValue(sRegPath & sRegName)
  125.        else
  126.          '//Enable it  
  127.           Call RegWriteValue(sP & sRegName,sValue,1)
  128.           Call RegDeleteValue(sRegPath & sRegName)
  129.        end if 
  130.  
  131.        Call ReloadAll
  132.     end if
  133.  
  134.  
  135.     If ElementIndex=3 then 'Delete
  136.        If bIsEnabled=true then
  137.           Call MsgError("Unable to delete an enabled item - please disable it first before trying to delete it")
  138.        else 
  139.           Call RegDeleteValue(sRegPath & sRegName)
  140.           Call ReloadAll
  141.           Call Restart
  142.        end if
  143.     end if
  144.  
  145.  end if
  146. End Sub
  147.  
  148. Sub Plugin_Terminate 
  149. End Sub
  150.  
  151.  
  152.  
  153.